home *** CD-ROM | disk | FTP | other *** search
/ The 640 MEG Shareware Studio 2 / The 640 Meg Shareware Studio CD-ROM Volume II (Data Express)(1993).ISO / os2 / pccts.zip / SYM.H < prev    next >
C/C++ Source or Header  |  1992-12-08  |  650b  |  29 lines

  1. /* define some hash function */
  2. #ifndef HASH
  3. #define HASH(p, h) while ( *p != '\0' ) h = (h<<1) + *p++;
  4. #endif
  5.  
  6. typedef struct symrec {
  7.     char * symbol;
  8.     struct symrec *next, *prev, **head, *scope;
  9.     unsigned hash;
  10.     int token;     /* either FUNC or VAR */
  11.     int level;     /* either LOCAL, GLOBAL, PARAMETER */
  12.     int offset; /* offset from sp on the stack */
  13.                 /* locals are - offset, param is 0 */
  14.     } Sym, *SymPtr;
  15.  
  16. void zzs_init();
  17. void zzs_done();
  18. void zzs_add();
  19. Sym *zzs_get();
  20. void zzs_del();
  21. void zzs_keydel();
  22. Sym **zzs_scope();
  23. Sym *zzs_rmscope();
  24. void zzs_stat();
  25. Sym *zzs_new();
  26. Sym *zzs_newadd();
  27. char *zzs_strdup();
  28.  
  29.